<!DOCTYPE html>

<html class="translated-ltr"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>颠覆</title>
<link rel="stylesheet" type="text/css" href="../C.css">
<script type="text/javascript" src="../jquery.js"></script><script type="text/javascript" src="../jquery.syntax.js"></script><script type="text/javascript" src="../yelp.js"></script>
<link type="text/css" rel="stylesheet" charset="UTF-8" href="https://translate.googleapis.com/translate_static/css/translateelement.css"></head>
<body id="home">
<!--<script src="https://ssl.google-analytics.com/urchin.js" type="text/javascript"></script><script type="text/javascript">
        _uacct = "UA-1018242-8";
        urchinTracker();
      </script><script>
      function englishPageVersion() {
        var href = window.location.href;
        if (href.slice(-1) == "/") {
                window.location = "index.html.en";
        } else {
                window.location = href.replace(/\.html.*/, ".html.en");
        }
         return false;
      }
      function browserPreferredLanguage() {
        var href = window.location.href;
        if (href.slice(-1) == "/") {
                window.location = href;
        } else {
                window.location = href.replace(/\.html.*/, ".html");
        }
        return false;
      }
      </script>--><div id="container">
<div id="container-inner">
<div id="mothership"><ul>
<li><a href="https://partners.ubuntu.com"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">伙伴</font></font></a></li>
<li><a href="https://www.ubuntu.com/support/community-support"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">支持</font></font></a></li>
<li><a href="https://community.ubuntu.com"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">社区</font></font></a></li>
<li><a href="https://www.ubuntu.com"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Ubuntu.com</font></font></a></li>
</ul></div>
<div id="header">
<h1 id="ubuntu-header"><a href="https://help.ubuntu.com/"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Ubuntu文档</font></font></a></h1>
<ul id="main-menu">
<li><a class="main-menu-item current" href="https://help.ubuntu.com/"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">官方文件</font></font></a></li>
<li><a href="https://help.ubuntu.com/community/CommunityHelpWiki"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">社区帮助Wiki</font></font></a></li>
<li><a href="https://community.ubuntu.com/t/contribute/26"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">有助于</font></font></a></li>
</ul>
</div>
<div id="menu-search"><div id="search-box">
<noscript><form action="https://www.google.com/cse" id="cse-search-box"><div>
<input type="hidden" name="cx" value="003883529982892832976:e2vwumte3fq"><input type="hidden" name="ie" value="UTF-8"><input type="text" name="q" size="21"><input type="submit" name="sa" value="Search">
</div></form></noscript><!--
<script>
                document.write('<form action="https://help.ubuntu.com/search.html" id="cse-search-box">');
                document.write('  <div>');
                document.write('    <input type="hidden" name="cof" value="FORID:9">');
                document.write('    <input type="hidden" name="cx" value="003883529982892832976:e2vwumte3fq">');
                document.write('    <input type="hidden" name="ie" value="UTF-8">');
                document.write('    <input type="text" name="q" size="21">');
                document.write('    <input type="submit" name="sa" value="Search">');
                document.write('  </div>');
                document.write('</form>');
              </script>-->
</div></div>
<div class="trails"><div class="trail">
<a href="https://help.ubuntu.com/18.04" class="trail"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Ubuntu 18.04</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> &nbsp;» </font></font><a class="trail" href="../index.html" title="Ubuntu服务器指南"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Ubuntu服务器指南</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> &nbsp;» </font></font><a class="trail" href="version-control-system.html" title="版本控制系统"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">版本控制系统</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> &nbsp;»</font></font></div></div>
<div id="cwt-content" class="clearfix content-area"><div id="page">
<div id="content">
<div class="links nextlinks">
<a class="nextlinks-prev" href="git.html" title="混帐"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">上一页</font></font></a><a class="nextlinks-next" href="version-control-ref.html" title="参考"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">下一页</font></font></a>
</div>
<div class="hgroup"><h1 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">颠覆</font></font></h1></div>
<div class="region">
<div class="contents"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
Subversion是一个开源版本控制系统。</font><font style="vertical-align: inherit;">使用Subversion，您可以记录源文件和文档的历史记录。</font><font style="vertical-align: inherit;">它随着时间的推移管理文件和目录。</font><font style="vertical-align: inherit;">将文件树放入中央存储库。</font><font style="vertical-align: inherit;">存储库很像普通的文件服务器，除了它记住对文件和目录所做的每一次更改。
          </font></font></p></div>
<div class="links sectionlinks" role="navigation"><ul>
<li class="links"><a class="xref" href="subversion.html#subversion-installation" title="安装"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">安装</font></font></a></li>
<li class="links"><a class="xref" href="subversion.html#subversion-configuration" title="服务器配置"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">服务器配置</font></font></a></li>
<li class="links"><a class="xref" href="subversion.html#access-methods" title="访问方法"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">访问方法</font></font></a></li>
</ul></div>
<div class="sect2 sect" id="subversion-installation"><div class="inner">
<div class="hgroup"><h2 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">安装</font></font></h2></div>
<div class="region"><div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
要使用HTTP协议访问Subversion存储库，您必须安装和配置Web服务器。</font><font style="vertical-align: inherit;">Apache2被证明可以与Subversion一起使用。</font><font style="vertical-align: inherit;">请参阅Apache2部分中的HTTP子部分来安装和配置Apache2。</font><font style="vertical-align: inherit;">要使用HTTPS协议访问Subversion存储库，必须在Apache 2 Web服务器中安装和配置数字证书。</font><font style="vertical-align: inherit;">请参阅Apache2部分中的HTTPS子部分以安装和配置数字证书。
						</font></font></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
		要安装Subversion，请从终端提示符处运行以下命令：
            </font></font></p>
<p class="para">
</p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">sudo apt install subversion apache2 libapache2-svn</font></font></span>
</pre></div>
	    <p></p>
</div></div>
</div></div>
<div class="sect2 sect" id="subversion-configuration"><div class="inner">
<div class="hgroup"><h2 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">服务器配置</font></font></h2></div>
<div class="region">
<div class="contents"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
	此步骤假定您已在系统上安装了上述软件包。</font><font style="vertical-align: inherit;">本节介绍如何创建Subversion存储库并访问项目。</font></font></p></div>
<div class="sect3 sect" id="create-svn-repos"><div class="inner">
<div class="hgroup"><h3 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">创建Subversion存储库</font></font></h3></div>
<div class="region"><div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">可以使用终端提示符中的以下命令创建Subversion存储库：</font></font></p>
<p class="para">
</p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svnadmin create / path / to / repos / project</font></font></span>
</pre></div>
        <p></p>
</div></div>
</div></div>
<div class="sect3 sect" id="import-svn-files"><div class="inner">
<div class="hgroup"><h3 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">导入文件</font></font></h3></div>
<div class="region"><div class="contents"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
                            创建存储库后，可以
                             </font></font><span class="em emphasis"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">将</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">文件导入存储库。</font><font style="vertical-align: inherit;">要导入目录，请在终端提示符下输入以下内容：
</font></font></p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn import / path / to / import / directory file：/// path / to / repos / project</font></font></span>
</pre></div>
                            <p></p></div></div>
</div></div>
</div>
</div></div>
<div class="sect2 sect" id="access-methods"><div class="inner">
<div class="hgroup"><h2 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">访问方法</font></font></h2></div>
<div class="region">
<div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Subversion存储库可以通过许多不同的方法访问（检出） - 在本地磁盘或通过各种网络协议。</font><font style="vertical-align: inherit;">但是，存储库位置始终是URL。</font><font style="vertical-align: inherit;">该表描述了不同的URL方案如何映射到可用的访问方法。</font></font></p>
<div class="table">
<div class="title"><h3><span class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">访问方法</font></font></span></h3></div>
<table summary="Access Methods" style="border: solid 1px;">
<thead><tr>
<th class="td-colsep"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">架构</font></font></p></th>
<th><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">访问方法</font></font></p></th>
</tr></thead>
<tbody>
<tr>
<td class="td-colsep"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">文件：//</font></font></p></td>
<td><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">直接存储库访问（在本地磁盘上）</font></font></p></td>
</tr>
<tr class="shade">
<td class="td-colsep"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">HTTP：//</font></font></p></td>
<td><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">通过WebDAV协议访问Subversion感知的Apache2 Web服务器</font></font></p></td>
</tr>
<tr>
<td class="td-colsep"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">https：//开头</font></font></p></td>
<td><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">与http：//相同，但使用SSL加密</font></font></p></td>
</tr>
<tr class="shade">
<td class="td-colsep"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">SVN：//</font></font></p></td>
<td><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">通过自定义协议访问svnserve服务器</font></font></p></td>
</tr>
<tr>
<td class="td-colsep"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">SVN + SSH：//</font></font></p></td>
<td><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">与svn：//相同，但是通过SSH隧道</font></font></p></td>
</tr>
</tbody>
</table>
</div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
在本节中，我们将了解如何为所有这些访问方法配置Subversion。</font><font style="vertical-align: inherit;">在这里，我们涵盖了基础知识。</font><font style="vertical-align: inherit;">有关更高级的用法详细信息，请参阅</font></font><a href="http://svnbook.red-bean.com/" class="ulink" title="http://svnbook.red-bean.com/"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn书籍</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">。
				</font></font></p>
</div>
<div class="sect3 sect" id="direct-repos-access"><div class="inner">
<div class="hgroup"><h3 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">直接存储库访问（文件：//）</font></font></h3></div>
<div class="region"><div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">这是所有访问方法中最简单的。</font><font style="vertical-align: inherit;">它不需要运行任何Subversion服务器进程。</font><font style="vertical-align: inherit;">此访问方法用于从同一台计算机访问Subversion。</font><font style="vertical-align: inherit;">在终端提示符下输入的命令语法如下：</font></font></p>
<p class="para">
</p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn co file：/// path / to / repos / project</font></font></span>
</pre></div>
        <p></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">要么</font></font></p>
<p class="para">
</p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn co file：// localhost / path / to / repos / project</font></font></span>
</pre></div>
        <p></p>
<div class="note" title="注意"><div class="inner"><div class="region"><div class="contents">
		<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">如果未指定主机名，则有三个正斜杠（///） - 两个用于协议（在本例中为文件）加上路径中的前导斜杠。</font><font style="vertical-align: inherit;">如果指定主机名，则必须使用两个正斜杠（//）。</font></font></p>
	</div></div></div></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">存储库权限取决于文件系统权限。</font><font style="vertical-align: inherit;">如果用户具有读/写权限，则可以从存储库签出并提交。</font></font></p>
</div></div>
</div></div>
<div class="sect3 sect" id="access-via-webdav"><div class="inner">
<div class="hgroup"><h3 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">通过WebDAV协议访问（http：//）</font></font></h3></div>
<div class="region"><div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
                          要通过WebDAV协议访问Subversion存储库，您必须配置Apache 2 Web服务器。</font><font style="vertical-align: inherit;">在</font><span class="file filename"><font style="vertical-align: inherit;">/etc/apache2/sites-available/000-default.conf中</font></span><font style="vertical-align: inherit;">的</font></font><span class="em emphasis"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">&lt;VirtualHost&gt;</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">和</font></font><span class="em emphasis"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">&lt;/ VirtualHost&gt;</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">元素
                           </font><font style="vertical-align: inherit;">或其他VirtualHost文件</font><font style="vertical-align: inherit;">之间添加以下代码段 
                           </font><font style="vertical-align: inherit;">：
                          </font></font><span class="file filename"><font style="vertical-align: inherit;"></font></span><font style="vertical-align: inherit;"></font></p>
<div class="code"><pre class="contents "><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> &lt;Location / svn&gt;</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  DAV svn</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  SVNParentPath / path / to / repos</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  AuthType Basic</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  AuthName“您的存储库名称”</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  AuthUserFile / etc / subversion / passwd</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  需要有效用户</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
 &lt;/位置&gt; </font></font><font></font>
</pre></div>
<div class="note" title="注意"><div class="inner"><div class="region"><div class="contents">
		<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">上面的配置代码段假定</font><font style="vertical-align: inherit;">
    使用</font><span class="cmd command"><font style="vertical-align: inherit;">svnadmin</font></span><font style="vertical-align: inherit;">命令</font><font style="vertical-align: inherit;">在</font></font><span class="file filename"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">/ path / to / repos</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">目录</font><font style="vertical-align: inherit;">下创建Subversion存储库</font><font style="vertical-align: inherit;">，并且HTTP用户对文件具有足够的访问权限（参见下文）。</font><font style="vertical-align: inherit;">可以使用</font><span class="cmd command"><font style="vertical-align: inherit;">http：// hostname / svn / repos_name</font></span><font style="vertical-align: inherit;"> 
    url </font><font style="vertical-align: inherit;">访问它们</font><font style="vertical-align: inherit;">。</font></font><span class="cmd command"><font style="vertical-align: inherit;"></font></span><font style="vertical-align: inherit;"></font><span class="cmd command"><font style="vertical-align: inherit;"></font></span><font style="vertical-align: inherit;"></font></p>
    </div></div></div></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
         像上面那样更改apache配置需要使用以下命令重新加载服务
         </font></font></p>
<div class="screen"><pre class="contents ">    <span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">sudo systemctl reload apache2.service</font></font></span>
</pre></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
         要通过HTTP将文件导入或提交到Subversion存储库，存储库应归HTTP用户所有。</font><font style="vertical-align: inherit;">在Ubuntu系统中，HTTP用户是
          </font></font><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">www-data</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">。</font><font style="vertical-align: inherit;">要更改存储库文件的所有权，请在终端提示符处输入以下命令：
         </font></font></p>
<div class="screen"><pre class="contents ">    <span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">sudo chown -R www-data：www-data / path / to / repos</font></font></span>
</pre></div>
<div class="note" title="注意"><div class="inner"><div class="region"><div class="contents">
        <p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
        通过将存储库的所有权更改为
         </font></font><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">www-data，</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">您将无法通过以</font><font style="vertical-align: inherit;">除</font><span class="cmd command"><font style="vertical-align: inherit;">www-data</font></span><font style="vertical-align: inherit;">之外的任何用户身份</font><font style="vertical-align: inherit;">运行</font></font><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn import file：///</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">命令
         </font><font style="vertical-align: inherit;">来将文件导入或提交到存储库中</font><font style="vertical-align: inherit;">。
        </font></font><span class="cmd command"><font style="vertical-align: inherit;"></font></span><font style="vertical-align: inherit;"></font></p>
        </div></div></div></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
        接下来，您必须创建</font><font style="vertical-align: inherit;">包含用户身份验证详细信息</font><font style="vertical-align: inherit;">的</font></font><span class="file filename"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">/ etc / subversion / passwd</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">文件。</font><font style="vertical-align: inherit;">要创建文件，请在命令提示符处发出以下命令（将创建文件并添加第一个用户）：
        </font></font></p>
<div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">sudo htpasswd -c / etc / subversion / passwd user_name</font></font></span>
</pre></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
        要添加其他用户，请省略</font></font><span class="em emphasis"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">“-c”</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">选项，因为此选项将替换旧文件。</font><font style="vertical-align: inherit;">而是使用此表单：
        </font></font></p>
<div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">sudo htpasswd / etc / subversion / passwd user_name</font></font></span>
</pre></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">此命令将提示您输入密码。</font><font style="vertical-align: inherit;">输入密码后，即会添加用户。</font><font style="vertical-align: inherit;">现在，要访问存储库，您可以运行以下命令：</font></font></p>
<div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn co http：// servername / svn</font></font></span></pre></div>
<div class="note note-warning" title="警告"><div class="inner"><div class="region"><div class="contents">
		<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
			密码以纯文本形式传输。</font><font style="vertical-align: inherit;">如果您担心密码窥探，建议您使用SSL加密。</font><font style="vertical-align: inherit;">有关详细信息，请参阅下一节。
		</font></font></p>
	</div></div></div></div>
</div></div>
</div></div>
<div class="sect3 sect" id="access-via-webdav-with-ssl"><div class="inner">
<div class="hgroup"><h3 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用SSL加密通过WebDAV协议访问（https：//）</font></font></h3></div>
<div class="region"><div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 
					使用SSL加密（https：//）通过WebDAV协议访问Subversion存储库与http：//类似，不同之处在于您必须在Apache2 Web服务器中安装和配置数字证书。</font><font style="vertical-align: inherit;">要在Subversion中使用SSL，请将上述Apache2配置添加到</font></font><span class="file filename"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">/etc/apache2/sites-available/default-ssl.conf</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">。</font><font style="vertical-align: inherit;">有关使用SSL设置Apache2的更多信息，请参阅</font></font><a class="xref" href="httpd.html#https-configuration" title="HTTPS配置"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">HTTPS配置</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">。
					</font></font></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
						您可以安装签名机构颁发的数字证书。</font><font style="vertical-align: inherit;">或者，您可以安装自己的自签名证书。
					</font></font></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
						此步骤假定您已在Apache 2 Web服务器中安装并配置了数字证书。</font><font style="vertical-align: inherit;">现在，要访问Subversion存储库，请参阅上面的部分！</font><font style="vertical-align: inherit;">除协议外，访问方法完全相同。</font><font style="vertical-align: inherit;">您必须使用https：//访问Subversion存储库。
					</font></font></p>
</div></div>
</div></div>
<div class="sect3 sect" id="access-via-custom-protocol"><div class="inner">
<div class="hgroup"><h3 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">通过自定义协议访问（svn：//）</font></font></h3></div>
<div class="region"><div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 
					创建Subversion存储库后，您可以配置访问控制。</font><font style="vertical-align: inherit;">您可以编辑</font></font><span class="file filename"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
					/path/to/repos/project/conf/svnserve.conf</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">文件以配置访问控制。</font><font style="vertical-align: inherit;">例如，要设置身份验证，您可以取消注释配置文件中的以下行：</font></font></p>
<div class="code"><pre class="contents "><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">＃ [一般]</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
#password-db = passwd</font></font></pre></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
					取消注释上述行后，您可以在passwd文件中维护用户列表。</font><font style="vertical-align: inherit;">因此，</font><font style="vertical-align: inherit;">在同一目录中</font><font style="vertical-align: inherit;">编辑文件</font></font><span class="file filename"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">passwd
					</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">并添加新用户。</font><font style="vertical-align: inherit;">语法如下：
					</font></font></p>
<div class="code"><pre class="contents "><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">用户名=密码</font></font></pre></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
					有关更多详细信息，请参阅该文件。
					</font></font></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
					现在，要通过svn：//自定义协议从同一台计算机或不同的计算机访问Subversion，您可以使用svnserve命令运行svnserver。</font><font style="vertical-align: inherit;">语法如下：
					</font></font></p>
<div class="code"><pre class="contents "><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">$ svnserve -d --foreground -r / path / to / repos</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
＃-d  - 守护进程模式</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
＃--foreground  - 在前台运行（对调试很有用）</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
＃-r  - 要服务的目录的根目录</font></font><font></font>
<font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
有关更多用法详情，请参阅：</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
$ svnserve --help</font></font></pre></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">运行此命令后，Subversion开始侦听默认端口（3690）。</font><font style="vertical-align: inherit;">要访问项目存储库，必须从终端提示符运行以下命令：</font></font></p>
<p class="para">
</p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn co svn：// hostname / project project --username user_name</font></font></span>
</pre></div>
                                        <p></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">根据服务器配置，它会提示输入密码。</font><font style="vertical-align: inherit;">一旦通过身份验证，它就会从Subversion存储库中检出代码。</font><font style="vertical-align: inherit;">要将项目存储库与本地副本同步，可以运行</font></font><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">update</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">子命令。</font><font style="vertical-align: inherit;">在终端提示符下输入的命令语法如下：
					</font></font></p>
<p class="para">
</p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">cd project_dir; </font><font style="vertical-align: inherit;">svn更新</font></font></span>
</pre></div>
                                        <p></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">有关使用每个Subversion子命令的更多详细信息，请参阅手册。</font><font style="vertical-align: inherit;">例如，要了解有关co（checkout）命令的更多信息，请从终端提示符处运行以下命令：</font></font></p>
<p class="para"></p><div class="screen"><pre class="contents "><span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn co help</font></font></span></pre></div><p></p>
</div></div>
</div></div>
<div class="sect3 sect" id="access-via-custom-protocol-with-ssh"><div class="inner">
<div class="hgroup"><h3 class="title"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">使用SSH加密通过自定义协议访问（svn + ssh：//）</font></font></h3></div>
<div class="region"><div class="contents">
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">配置和服务器进程与svn：//方法中的相同。</font><font style="vertical-align: inherit;">有关详细信息，请参阅上一节。</font><font style="vertical-align: inherit;">此步骤假定您已执行上述步骤并使用</font></font><span class="app application"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svnserve</font></font></span><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">   
					命令</font><font style="vertical-align: inherit;">启动Subversion服务器</font><font style="vertical-align: inherit;">。</font></font></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">还假设ssh服务器正在该机器上运行，并且它允许传入连接。</font><font style="vertical-align: inherit;">要确认，请尝试使用ssh登录该计算机。</font><font style="vertical-align: inherit;">如果你能登录，一切都很完美。</font><font style="vertical-align: inherit;">如果您无法登录，请在继续之前解决。</font></font></p>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn + ssh：//协议用于使用SSL加密访问Subversion存储库。</font><font style="vertical-align: inherit;">使用此方法加密数据传输。</font><font style="vertical-align: inherit;">要访问项目存储库（例如，使用签出），必须使用以下命令语法： 
                                        </font></font></p>
<p class="para">
</p><div class="screen"><pre class="contents ">    <span class="cmd command"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">svn co svn + ssh：// ssh_username @ hostname / path / to / repos / project</font></font></span>
</pre></div>
                                        <p></p>
<div class="note" title="注意"><div class="inner"><div class="region"><div class="contents"><p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> 您必须使用完整路径（/ path / to / repos / project）使用此访问方法访问Subversion存储库。 
					</font></font></p></div></div></div></div>
<p class="para"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
					根据服务器配置，它会提示输入密码。</font><font style="vertical-align: inherit;">您必须输入用于通过ssh登录的密码。</font><font style="vertical-align: inherit;">经过身份验证后，它会检出Subversion存储库中的代码。
					</font></font></p>
</div></div>
</div></div>
</div>
</div></div>
</div>
<div class="links nextlinks">
<a class="nextlinks-prev" href="git.html" title="混帐"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">上一页</font></font></a><a class="nextlinks-next" href="version-control-ref.html" title="参考"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">下一页</font></font></a>
</div>
<div class="clear"></div>
</div>
<div id="pagebottom"></div>
</div></div>
</div>
<div id="footer"><p><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">本文档中的资料可在免费许可下获得，</font><font style="vertical-align: inherit;">有关详细信息</font><font style="vertical-align: inherit;">，请参阅</font></font><a href="https://help.ubuntu.com/legal.html"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Legal</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">。</font></font><br><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
          有关贡献的信息，请参阅</font></font><a href="https://wiki.ubuntu.com/DocumentationTeam"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Ubuntu文档团队Wiki页面</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">。</font><font style="vertical-align: inherit;">要报告此serverguide文档中</font></font><a href="https://bugs.launchpad.net/serverguide"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">的错误</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">，请</font><a href="https://bugs.launchpad.net/serverguide"><font style="vertical-align: inherit;">提交错误报告</font></a><font style="vertical-align: inherit;">。</font></font></p></div>
</div><div id="goog-gt-tt" class="skiptranslate" dir="ltr"><div style="padding: 8px;"><div><div class="logo"><img src="https://www.gstatic.com/images/branding/product/1x/translate_24dp.png" width="20" height="20" alt="Google 翻译"></div></div></div><div class="top" style="padding: 8px; float: left; width: 100%;"><h1 class="title gray">原文</h1></div><div class="middle" style="padding: 8px;"><div class="original-text"></div></div><div class="bottom" style="padding: 8px;"><div class="activity-links"><span class="activity-link">提供更好的翻译建议</span><span class="activity-link"></span></div><div class="started-activity-container"><hr style="color: #CCC; background-color: #CCC; height: 1px; border: none;"><div class="activity-root"></div></div></div><div class="status-message" style="display: none;"></div></div>


<div class="goog-te-spinner-pos"><div class="goog-te-spinner-animation"><svg xmlns="http://www.w3.org/2000/svg" class="goog-te-spinner" width="96px" height="96px" viewBox="0 0 66 66"><circle class="goog-te-spinner-path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle></svg></div></div></body></html>